package GVMTypes

import "encoding/json"

// guigui 官网获取版本列表返回的数据结构
type GUIGUIVersions struct {
	Status int    `json:"status"`
	Msg    string `json:"msg"`
	Data   struct {
		Count       int `json:"count"`
		AllPage     int `json:"all_page"`
		NowPage     int `json:"now_page"`
		VersionList []struct {
			ID          int    `json:"id"`
			Title       string `json:"title"`
			DownloadURL string `json:"download_url"`
			ZoneType    int    `json:"zone_type"`
			ReleaseType int    `json:"release_type"`
			SortNum     int    `json:"sort_num"`
			IsOfficial  int    `json:"is_official"`
			IsDisplay   int    `json:"is_display"`
			CreateTime  string `json:"create_time"`
			UpdateTime  string `json:"update_time"`
			Version     string `json:"version"`
			VersionLog  string `json:"version_log"`
		} `json:"version_list"`
	} `json:"data"`
}

func (receiver *GUIGUIVersions) FromJson(jsonData string) error {
	if err := json.Unmarshal([]byte(jsonData), receiver); err != nil {
		return err
	}
	return nil
}
